Skip to content

feat(helm): add Helm chart for ActiveMQ broker deployment#1761

Open
jbonofre wants to merge 4 commits intoapache:mainfrom
jbonofre:gh-1754
Open

feat(helm): add Helm chart for ActiveMQ broker deployment#1761
jbonofre wants to merge 4 commits intoapache:mainfrom
jbonofre:gh-1754

Conversation

@jbonofre
Copy link
Member

Add a production-ready Helm chart for deploying ActiveMQ on Kubernetes, including StatefulSet with persistent KahaDB storage, multi-protocol services (OpenWire, AMQP, STOMP, MQTT, WebSocket), security hardening, Ingress, HPA, PDB, Prometheus ServiceMonitor, and example values files.

@kenliao94 do you mind to review ? It's a merge between what you did and what I did :)

Add a production-ready Helm chart for deploying ActiveMQ on Kubernetes,
including StatefulSet with persistent KahaDB storage, multi-protocol
services (OpenWire, AMQP, STOMP, MQTT, WebSocket), security hardening,
Ingress, HPA, PDB, Prometheus ServiceMonitor, and example values files.
Copy link
Contributor

@jeanouii jeanouii left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is all out of my skills to be honest. I just asked stupid questions and did some sanity check. Sorry to not be more useful.

image: {{ include "activemq.image" . }}
imagePullPolicy: {{ .Values.image.pullPolicy }}
env:
- name: ACTIVEMQ_CONNECTION_USER
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I double checked all variables and they are all valid in the docker image for activemq

@kenliao94
Copy link
Contributor

Awesome @jbonofre taking a look right now

name: activemq
description: Apache ActiveMQ - the most popular open source, multi-protocol, Java-based message broker
type: application
version: 6.3.0-SNAPSHOT
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are we launching this on 6.3? Not back porting it to 6.2?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm fine to create a backport on 6.2.x branch.

That said, regarding the number of improvements for 6.3.0, I will focus on 6.3.0 as first citizen 😄

HPA scaling creates independent broker instances each with their own
KahaDB store and no shared state. The KahaDB file lock only guarantees
a single process per volume, not cross-pod coordination. This leads to
message loss when producers and consumers connect to different pods.
Update container image repository from apache/activemq-classic to
apache/activemq and set appVersion to 6.2.0.
@jbonofre
Copy link
Member Author

@jeanouii @kenliao94 by the way (as mentioned earlier), I plan to add the index.yaml on dist.apache.org allowing user to directly add the ActiveMQ Helm repo.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants